#
# Torch user Makefile example
# Modifie par Alain Boucher le 14/03/2008
#


#
# Modifier la ligne suivante pour mettre le bon chemin (path)
# pour le repertoire de Torch3Vision
#

TORCHDIR := $(shell cd ../../../..; pwd)
#
# Ne pas modifier les 2 lignes ci-dessous
#

OS := $(shell uname -s)
include $(TORCHDIR)/Makefile_options_$(OS)

#---------------------------------------------------------

#
# Ne modifier rien dans cette section
#

# Regles de compilation automatique des fichiers C/C++ en .o
# Tout fichier .c, .cc, .cpp sera automatiquement compile
# en .o. Compilation seulement, pas d'edition des liens.

.SUFFIXES:	.o .cpp .c .cc

.cpp.o		:
		@echo "#"
		@echo "# Compiling "$@"..."
		@$(CC) $(CFLAGS_$(MODE)) $(INCS) -o $*.o -c $*.cpp

.cc.o		:
		@echo "#"
		@echo "# Compiling "$@"..."
		@$(CC) $(CFLAGS_$(MODE)) $(INCS) -o $*.o -c $*.cc

.c.o		:
		@echo "#"
		@echo "# Compiling "$@"..."
		@$(CC) $(CFLAGS_$(MODE)) $(INCS) -o $*.o -c $*.c 

#---------------------------------------------------------

#
# Section a modifier pour vos programmes
#

# Exemple de regle de compilation pour tous les fichiers de OBJ-progX vers 
# le programme 'progX'. Changer le nom de 'progX' pour votre nom d'executable.
# Ajouter autant d'executables que vous voulez dans un Makefile et vous
# pouvez mettre les fichiers .o que vous voulez. Chaque .c sera transforme
# en .o automatiquement (par les regles ci-dessus).

#
# Ces lignes definissent la liste des .o a mettre dans un executable (pour la compilation).
# Ajouter une ligne par programme.
#

OBJ-fft = fft2d.o fft2d_util.o 

#
# Ces lignes definissent l'edition des liens pour chaque executable.
# Tapez 'make progA' ou 'make progB' selon le programme que vous voulez compiler.
# Recopiez et modifiez les 2 lignes pour chaque nouveau programme.
#

all : fft2d 

fft2d	: $(OBJ-fft)
	  @cd $(TORCHDIR); ${MAKE} -s
	  @mkdir -p $(VERSION_KEY)
	  @$(CC) -o $@ $(OBJ-fft) $(LIBS)


# -----------------------------------------------------------------------

#
# Voici deux regles speciales pour le Makefile (a utiliser, mais ne pas modifier)
#

# Faites "make depend" et vous aurez dans le Makefile toutes les d�pendances entre
# fichiers pour vos executables. Cela permet une recompilation plus adaptee 
# si on change des fichiers .h

depend	:
		makedepend $(INCLUDEDIR) *.cc *.cpp *.c

# Faites un "make clean" pour nettoyer tous les fichiers objets .o et recommencer
# les compilations a zero. Utile parfois.

clean		: 
		$(RM) -r *.o 

# DO NOT DELETE
